package com.boot.mall.search.config;

import org.apache.http.HttpHost;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestClientBuilder;
import org.elasticsearch.client.RestHighLevelClient;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * 1、导入依赖
 *
 * 2、编写配置，给容器中注入RestHighLevelClient对象
 */

@Configuration
public class ElasticSearchConfig {

    private static final RequestOptions COMMON_OPTIONS;

    public static RequestOptions getCommonOptions() {
        return COMMON_OPTIONS;
    }

    static {
        RequestOptions.Builder builder = RequestOptions.DEFAULT.toBuilder();
        COMMON_OPTIONS = builder.build();
    }

    @Bean
    public RestHighLevelClient restHighLevelClient(){
        RestClientBuilder builder = RestClient.builder(new HttpHost("192.168.30.135",9200,"http"));
        RestHighLevelClient client = new RestHighLevelClient(builder);
        return client;
    }

}
